<?php
class User extends AppModel {
	var $name = 'User';
	var $validate = array(
		'username' => array(
			'alphanumberic' => array(
				'rule' 			=> 'alphaNumeric',
				'message' 		=> 'Bạn chỉ được nhập ký tự chữ và số'
			),
			'isunique' 		=> array(
				'rule' 			=> 'isUnique',
				'message' 		=> 'Đã có người sử dụng tài khoản này',
				'on'			=> 'create'
			)
		),
		'password' => array(
			'alphanumeric' 	=> array(
				'rule' 			=> 'alphaNumeric',
				'message' 		=> 'Bạn chỉ được nhập ký tự chữ và số'
			),
			'identicalfieldvalues' => array(
				'rule'			=> array('identicalFieldValues', 'repassword'),
				'message'		=> 'Mật khẩu nhập lại không đúng',
				'on'			=> 'create'
			)
		), 
		'email'	  => array(
			'rule' => 'email',
			'message' => 'Địa chỉ email của bạn không hợp lệ' 
		) 
	);

	//The Associations below have been created with all possible keys, those that are not needed can be removed
	var $belongsTo = array('Group');
	
	/**
	 * So sánh dữ liệu nhập giữa 2 trường
	 *
	 * @param array $field: dữ liệu nhập
	 * @param string $compare_field: trường cần so sánh
	 * @return bollean (true: giống nhau , false: khác)
	 */
	function identicalFieldValues( $field=array(), $compare_field=null ) 
    {
    	//debug($field);die();
        foreach( $field as $key => $value ){
            $v1 = $value;
            $v2 = $this->data[$this->name][ $compare_field ];      
            if ($key == 'password') $v2 = AuthComponent::password($v2);            
            if($v1 !== $v2) {
                return FALSE;
            } else {
                continue;
            }
        }
        return TRUE;
    } 
}
?>